perm filename MIXSCR.F4[1,LCS] blob
sn#305765 filedate 1977-09-19 generic text, type C, neo UTF8
COMMENT ā VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 C***** MIXES AND LINKS FILES PUT OUT BY 'SCORE' *******
C00009 ENDMK
Cā;
C***** MIXES AND LINKS FILES PUT OUT BY 'SCORE' *******
C***** ALL FILES MUST HAVE THE .SCR EXTENSION *****
C***** LOAD WITH RENAM.FAI
DOUBLE PRECISION NAME
EQUIVALENCE (NAME,NN,N1)
COMMON /VV/Q(19),R(19),KL,J,K,L,M,P1,PX,A,B,C,D,IBL
COMMON /LNK/ NK,NZ(10),IP /NN/ NN(2)
DATA IBL/' '/,NN(2)/'.SCR'/
TYPE 24
NK=0
DL=0
LX=0
ACCEPT 2,K,IP
IF(K.NE.'L')GO TO 200
CD IF(K.NE.'L')GO TO 302
LX=-1
CD GO TO 200
CD302 TYPE 300
CD ACCEPT 301,DL
CD300 FORMAT(' GIVE DELAY TIME OF 2ND FILE '$)
CD301 FORMAT(F)
200 I=21
TYPE 20
ACCEPT 2,N1
IF(N1.EQ.IBL)GO TO 200
205 OPEN(UNIT=I,FILE=NAME)
IF(I.EQ.1)GO TO 206
IF(I.EQ.22)GO TO 207
201 TYPE 22
ACCEPT 2,N1
IF(N1.EQ.IBL)GO TO 201
I=I+1
GO TO 205
207 IF(LX.EQ.0)GO TO 202
1000 TYPE 41
ACCEPT 2,K
IF(K.EQ.IBL)GO TO 202
C TAKES UP TO 2+10 FILES.
NK=NK+1
NZ(NK)=K
IF(NK.LT.10)GO TO 1000
202 TYPE 23
ACCEPT 2,N1
IF(N1.EQ.IBL)GO TO 202
I=1
N3=N1
GO TO 205
206 TYPE 25
IF(LX.EQ.0)GO TO 26
CALL LINK
GO TO 204
25 FORMAT(' WORKING')
26 DO 1 K=1,3
READ(21,2)Q
WRITE(1,2)Q
1 READ(22,2)Q
C READS FIRST 3 LINES
CALL CHECK(N,Q,P1,21)
CALL CHECK(M,R,PX,22)
CATCHES INSERTED LINES. DL=DELAY TIME.
6 IF(PX.LT.P1)GO TO 5
CALL RDWRT(N,P1,Q,21)
IF(KL)10,6,6
5 CALL RDWRT(M,PX,R,22)
IF(KL.EQ.0)GO TO 6
11 PX=10000
GO TO 13
10 P1=10000
13 IF(P1.NE.10000.AND.M.NE.N)GO TO 6
12 WRITE(1,7)
CC REWIND 21
CC REWIND 22
CC CALL RENAMX('$$$$1','DAT',N1,'SCR')
CC CALL RENAMX('$$$$2','DAT',N2,'SCR')
204 END FILE 1
CC CALL RENAM(N3,'DAT',N3,'SCR')
TYPE 203,N3
CALL EXIT
203 FORMAT(/' ****** MIX FILE NAME = ',A5,'.SCR')
2 FORMAT(19A5)
7 FORMAT(' FINISH;')
24 FORMAT(' MIXES OR LINKS SCORE LISTS.'/
1' USES ".SCR" EXTENSIONS ONLY!!! '/
1' BE SURE ALL HIGHER PARAMS PRINT EACH TIME.'
1//' L = LINK, <CR> = MIX '$)
41 FORMAT(' TYPE NEXT FILE NAME OR <CR> '$)
20 FORMAT(' TYPE FILE 1 (WITHOUT EXT.) '$)
22 FORMAT(/' TYPE FILE 2 '$)
23 FORMAT(/' TYPE OUTPUT NAME '$)
END
SUBROUTINE CHECK(N,Q,P1,J)
COMMON /VV/QQ(19),RR(19),KL,JJ,KK,L,M,P,PX,LL,K,IBL
DIMENSION Q(19),AA(50)
KL=0
33 READ(J,30,END=100)L,N,K,Q,AA
IF(Q(5).NE.' ')GO TO 32
IF(Q(10).NE.'.')GO TO 32
IF(Q(19).EQ.'.')GO TO 31
CATCHES INSERTED LINES.
CD32 REREAD 4,L,N,P1,Q
32 REREAD 44,L,N,Q
IF(N.EQ.'FINIS')KL=-1
CALL SHORT(Q,N)
CC TYPE 44,L,N,(Q(LL),LL=1,K)
IF(KL)RETURN
CC WRITE(1,44)L,N,(Q(LL),LL=1,K)
GO TO 33
100 PAUSE 'CHECK'
31 REREAD 4,L,N,P1
REREAD 44,L,N,Q
30 FORMAT(72A1)
4 FORMAT(A1,A5,F,19A5)
44 FORMAT(A1,20A5)
END
SUBROUTINE SHORT(Q,N)
COMMON /VV/QQ(19),RR(19),KL,JJ,KK,L,M,P,PX,LL,K,A,B,IBL
COMMON /LNK/ NK,NZ(10),IP
DIMENSION Q(1)
K=19
DO 1 K=19,1,-1
1 IF(Q(K).NE.' ')GO TO 2
2 IF(IP.NE.IBL)TYPE 44,L,N,(Q(LL),LL=1,K)
IF(KL)RETURN
3 WRITE(1,44)L,N,(Q(LL),LL=1,K)
44 FORMAT(A1,20A5)
END
SUBROUTINE RDWRT(I,P,R,J)
COMMON /VV/Q(19),RR(19),KL,JJ,KK,L,M,P1,PX,LL,K,IBL
DIMENSION R(19)
KL=0
CALL SHORT(R,I)
CC WRITE(1,44)L,I,(R(N),N=1,K)
CC TYPE 44,L,I,(R(N),N=1,K)
1 READ (J,44,END=100)L,I,R
CC REREAD 44,L,I,R
CALL SHORT(R,I)
CC WRITE(1,44)L,I,(R(N),N=1,K)
CC TYPE 44,L,I,(R(N),N=1,K)
IF(I.NE.'PRINT')GO TO 1
2 CALL CHECK(I,R,P,J)
RETURN
44 FORMAT(A1,20A5)
100 PAUSE 'RDWRT'
END
SUBROUTINE LINK
DOUBLE PRECISION NAME
EQUIVALENCE (NAME,NN)
COMMON /VV/Q(19),R(19),KL,J,K,L,M,P1,PX,A,B,C,D,IBL
COMMON /LNK/ NK,NZ(10),IP /NN/ NN(2)
44 FORMAT(A1,20A5)
KL=0
JJ=0
J=21
1 READ(J,44)L,LL,Q
IF(LL.EQ.'FINIS')GO TO 2
4 CALL SHORT(Q,LL)
IF(JJ.GT.NK)RETURN
GO TO 1
2 IF(J.NE.21)GO TO 3
J=J+1
GO TO 1
3 REWIND 22
5 JJ=JJ+1
IF(JJ.GT.NK)GO TO 4
NN(1)=NZ(JJ)
OPEN(UNIT=22,FILE=NAME)
GO TO 1
END
CC SUBROUTINE RENAMX(J,K,L,M)
CC CALL RENAM(J,K,L,M)
CC TYPE 1,J,K,L,M
CC1 FORMAT(' (RENAMED -- ',A5,'.',A3,' CHANGED TO -- ',A5,'.',A3,')')
CC END